#ifndef _LL_EXTI_H_
#define _LL_EXTI_H_
 
#ifdef __cplusplus
extern "C" {
#endif
 
#include "stm32f4xx_ll_exti.h"
#include "stm32f4xx_ll_gpio.h"
#include "stdint.h"

#if defined(USE_FULL_LL_DRIVER)
#if defined (EXTI)
 
typedef void (*HAL_GPIO_PIN_EXTI_HANDLER)(uint16_t pin);
 
typedef struct {
	LL_EXTI_InitTypeDef initType;	// 中断类型
	HAL_GPIO_PIN_EXTI_HANDLER Extihandler;// 中断处理函数
	uint32_t PinReg;	 // LL库内引脚号:LL_GPIO_PIN_0 LL_GPIO_PIN_1 ...
	GPIO_TypeDef* Gpiox; // LL库内gpio分组
}LL_EXTI_InitConfig;
 

typedef struct {
	uint32_t trigger;
}HAL_GPIO_EXTI_CFG_T;
 
uint32_t LL_SETUP_EXTI(LL_EXTI_InitConfig* cfg, uint16_t pin, uint16_t local, uint8_t group);
 
#endif /* EXTI */
#endif /* USE_FULL_LL_DRIVER */
 
#ifdef __cplusplus 
}
#endif
 
#endif /* _NIOBE407_LL_EXTI_H_ */